//6, object 任意的JS对象
var j;
j = {};
j = function () { };
// {}用来指定对象中可以包含哪些属性
//语法: {属性名:属性值,属性名:属性值}
//在属性名后边加上?, 表示属性是可选的
var k;
k = { name: 'lys', age: 18 };
// [propName:string]：any表示任意类型的属性
var l;
l = { name: 'lys', age: 18, gender: 'male' };
/**
 * 设置函数结构的类型声明：
 *   语法：(形参:类型，形参:类型。。。。)=>返回值类型
 *  */
var q;
q = function (a, b) {
    return (a + b).toString();
};
/*
*   数组的类型声明：
*       类型[]
*       Array<类型>
* */
//7, array
// string[] 表示字符串数组
var w;
w = ['1', '3', 'e'];
//number[] 表示数值的数组
var r;
r = [1, 23];
var t;
t = [3, 4, 5];
/*
* 8,  元组，元组就是固定长度的数组
*       语法：[类型, 类型, 类型]
* */
var u;
u = ['hello', 'world', 123];
/*
*9, enum 枚举
*
* */
var Gender;
(function (Gender) {
    Gender[Gender["Male"] = 1] = "Male";
    Gender[Gender["Female"] = 2] = "Female";
})(Gender || (Gender = {}));
var i;
i = { name: 'lys', gender: Gender.Female };
console.log(i.gender === Gender.Female);



